
#ifndef MTGORG_H
#define MTGORG_H

// include files for QT
#include <qapplication.h>
#include <q3mainwindow.h>
#include <qaction.h>
#include <qmenubar.h>
#include <q3popupmenu.h>
#include <qstatusbar.h>
#include <q3whatsthis.h>
#include <qstring.h>
#include <qpixmap.h>
#include <qmessagebox.h>

// application specific includes
#include "ui_magicorganizer.h"

#include "sqlite3.h"

/**
  * This Class is the base class for your application. It sets up the main
  * window and providing a menubar, toolbar
  * and statusbar. For the main view, an instance of class MTGOrgView is
  * created which creates your view.
  */
class MTGOrgApp : public Q3MainWindow, public Ui::MagicOrganizer
{
  Q_OBJECT
  
  public:
    /** construtor */
    MTGOrgApp();
    /** destructor */
    ~MTGOrgApp();

    sqlite3 * sql;

  public slots: // Public slots
    /** exits the application */
    virtual void fileExit();

    /** shows an about dlg*/
    virtual void helpAbout();

    virtual void tabChanged();

    virtual void doSearch();

    virtual void handleAllCheckboxT(int b);
    virtual void handleAllCheckboxMT(int b);
    virtual void handleAllCheckboxR(int b);
    
    virtual void searchEditCard();

    virtual void deckNewDeck();
    virtual void deckRemoveDeck();
    virtual void deckSwitchDeck(const QString & d);

    virtual void deckEditCard();
    virtual void deckAddCard();
    virtual void deckRemoveCard();

  protected slots:
    virtual void languageChange();
};

#endif 

